﻿#pragma once
#include "XyNetCompiler/CodeGenerator.h"

namespace XyNet
{
	/// cpp代码创建器
	class CppCodeGenerator : public CodeGenerator
	{
	public:
		virtual ~CppCodeGenerator() {}

		virtual void generator(ServiceParser* parser) override;

	private:
		/// 创建头文件
		void generatorHeaderFile(ServiceParser* parser, const filesystem::path& headerPath);
		/// 创建源文件
		void generatorSourceFile(ServiceParser* parser, const filesystem::path& sourcePath);
	};
}